package com.expert.miniapp.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 * AnalysisReportDTO - AI 匹配分析报告返回结构
 *
 * 用于向前端返回生成好的分析报告内容。
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class AnalysisReportDTO {

    /**
     * 推荐项 ID
     */
    private String itemId;

    /**
     * AI 生成的匹配分析报告
     */
    private String analysisReport;

    /**
     * 报告生成时间
     */
    private LocalDateTime generatedAt;

    /**
     * 根据已经存在的推荐项构造 DTO
     *
     * @param item 推荐项
     * @return AnalysisReportDTO
     */
    public static AnalysisReportDTO fromExisting(com.expert.miniapp.dao.RecommendationItem item) {
        return AnalysisReportDTO.builder()
                .itemId(item.getItemId())
                .analysisReport(item.getAnalysisReport())
                .generatedAt(item.getCreatedAt())
                .build();
    }
}

